Skip to content

Restructure CI to prepare for required checks and merge queues #61978

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jul 31, 2025

Conversation

jakebailey
Copy link
Member

@jakebailey jakebailey commented Jun 30, 2025

This pulls the same method I used in tsgo to add required checks, plus merge queues using only a subset of the checks. Annoying in this repo where we have such a large matrix to write out, but oh well. Supporting this many versions of Node is a temporary problem if anything.

Also, while here, test Node 24.

@Copilot Copilot AI review requested due to automatic review settings June 30, 2025 21:31
@github-project-automation github-project-automation bot moved this to Not started in PR Backlog Jun 30, 2025
@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Jun 30, 2025
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR restructures the GitHub Actions CI workflow to support merge queues with a subset of checks and to enforce required checks before merging.

  • Introduces a merge_group event trigger for queue-based merges.
  • Refactors the testing matrix into a single matrix.config array with per-item skip flags.
  • Adds a final required job that fails if any needed job did not succeed or was not skipped.
Comments suppressed due to low confidence (2)

.github/workflows/ci.yml:15

  • Remove or clarify this commented-out release-* branch entry under merge_group. If release branches should also go through merge queues, uncomment it or document the intention to avoid confusion.
      # - release-*

.github/workflows/ci.yml:31

  • [nitpick] The matrix.config section contains many nearly identical entries. Consider using YAML anchors or a small generation script to DRY up the repeated OS/node-version combinations and reduce maintenance overhead.
        config:

Copy link
Member

@weswigham weswigham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Definitely a bit more verbose. Only one way to see how it pans out, really

@github-project-automation github-project-automation bot moved this from Not started to Needs merge in PR Backlog Jul 31, 2025
@jakebailey
Copy link
Member Author

Unfortunately this didn't get into 5.9 so I'll have to cherry-pick it over if we want to enable required checks there too.

@jakebailey jakebailey merged commit c1f5656 into microsoft:main Jul 31, 2025
33 checks passed
@github-project-automation github-project-automation bot moved this from Needs merge to Done in PR Backlog Jul 31, 2025
@jakebailey jakebailey deleted the jabaile/new-ci-required branch July 31, 2025 23:04
@jakebailey
Copy link
Member Author

@typescript-bot cherry-pick this to release-5.9

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jul 31, 2025

Starting jobs; this comment will be updated as builds start and complete.

Command Status Results
cherry-pick this to release-5.9 ✅ Started ✅ Results

@typescript-bot
Copy link
Collaborator

Hey, @jakebailey! I've created #62164 for you.

jakebailey added a commit that referenced this pull request Aug 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants